package cn.gok.common.entity.goods;

import com.baomidou.mybatisplus.annotation.*;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.List;

/**
 * @author shikundai
 * @date 2020/12/9
 * @time 15:58
 * @description 商品分类表
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
@TableName("g_category")
public class GoodsCategory {
    /**
     * @author shikundai
     * @date 2020/12/9
     * @time 15:58
     * @description 分类ID
     */
    @TableId(value = "CATEGORY_ID", type = IdType.AUTO)
    private Integer categoryId;
    /**
     * @author shikundai
     * @date 2020/12/9
     * @time 15:59
     * @description 分类名称
     */
    @TableField("CATEGORY_NAME")
    private String categoryName;
    /**
     * @author shikundai
     * @date 2020/12/9
     * @time 15:59
     * @description 分类父级ID   默认-1为一级分类
     */
    @TableField("PARENT_ID")
    private String parentId;

    /**
     * @author shikundai
     * @date 2020/12/9
     * @time 15:59
     * @description 分类编码   名称简拼，用于快捷页面跳转
     */
    @TableField("KEYWORDS")
    private String keywords;
    /**
     * @author shikundai
     * @date 2020/12/9
     * @time 16:00
     * @description 商品分类描述(一级是图片，二级是描述)
     */
    @TableField("CATY_DESC")
    private String catyDesc;
    /**
     * @author shikundai
     * @date 2020/12/9
     * @time 16:00
     * @description 商品分类排序
     */
    @TableField("SORT_ORL")
    private Integer sortOrl;
    /**
     * @author shikundai
     * @date 2020/12/9
     * @time 16:00
     * @description 是否显示在导航栏, 0不;1显示
     */
    @TableField("IS_SHOW_IN_NAV")
    private Integer isShowInNav;
    /**
     * @author shikundai
     * @date 2020/12/9
     * @time 16:00
     * @description 该分类的最高和最低价之间的价格分级,
     * 当大于1时,会根据最大最小价格区间分成区间,会在页面显示价格范围,
     * 如0-300,300-600,600-900这种;
     */
    @TableField("GRADE")
    private Byte grade;
    /**
     * @author shikundai
     * @date 2020/12/9
     * @time 16:01
     * @description 如果该字段有值, 则该分类将还会按照该值对应在表goods_attr的goods_attr_id所对应的属性筛选，
     * 如，封面颜色下有红，黑分类筛选
     */
    @TableField("FILTER_ATTR")
    private String filterAttr;
    /**
     * @author shikundai
     * @date 2020/12/9
     * @time 16:01
     * @description 是否展示 0不显示 1显示
     */
    @TableField("IS_SHOW")
    private Boolean isShow;
    /**
     * @author shikundai
     * @date 2020/12/9
     * @time 16:02
     * @description 是否有效 0无效 1有效
     */
    @TableField("IS_ENABLED")
    @TableLogic(value = "1",delval = "0")
    private Boolean isEnabled;
    /**
     * @author shikundai
     * @date 2020/12/9
     * @time 16:02
     * @description 创建时间
     */
    @TableField("CREATE_TIME")
    private String createTime;
    /**
     * @author shikundai
     * @date 2020/12/9
     * @time 16:02
     * @description 创建者
     */
    @TableField("CREATE_BY")
    private String createBy;
    /**
     * @author shikundai
     * @date 2020/12/9
     * @time 16:02
     * @description 更新时间
     */
    @TableField("UPDATE_TIME")
    private String updateTime;
    /**
     * @author shikundai
     * @date 2020/12/9
     * @time 16:02
     * @description 更新者
     */
    @TableField("UPDATE_BY")
    private String updateBy;

    /**
     * @author shikundai
     * @date 2020/12/9
     * @time 16:03
     * @description 子类
     */
    @TableField(exist = false)
    private List<GoodsCategory> son;

}